package cn.iocoder.yudao.module.movie.controller.app.vo;

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import java.util.List;

/**
 * <p>  </p>
 */
@Getter
@Setter
@ToString
@Schema(description = "基本信息")
public class AppMoviesRespVO {
    @JsonProperty("movies")
    @JSONField(name = "movies")
    @Schema(description = "电影列表")
    private List<MovieVO> movies;
    @JsonProperty("count")
    @JSONField(name = "count")
    @Schema(description = "电影数量")
    private Integer count;
    @Getter
    @Setter
    @ToString
    @Schema(description = "影院基本信息")
    public static class MovieVO {

        @JsonProperty("duration")
        @JSONField(name = "duration")
        @Schema(description = "时长（分钟）")
        private Integer duration;
        @JsonProperty("movieId")
        @JSONField(name = "movieId")
        @Schema(description = "电影ID")
        private String movieId;
        @JsonProperty("movieCode")
        @JSONField(name = "movieCode")
        @Schema(description = "电影编号")
        private String movieCode;
        @JsonProperty("name")
        @JSONField(name = "name")
        @Schema(description = "电影名称")
        private String name;
        @JsonProperty("posterUrl")
        @JSONField(name = "posterUrl")
        @Schema(description = "海报URL")
        private String posterUrl;
        @JsonProperty("version")
        @JSONField(name = "version")
        @Schema(description = "版本（影片2D、3d类型，imax等）")
        private String version;
        @JsonProperty("isPreShow")
        @JSONField(name = "isPreShow")
        @Schema(description = "是否预售（是否可购买）")
        private Boolean isPreShow;
        @JsonProperty("isGlobalReleased")
        @JSONField(name = "isGlobalReleased")
        @Schema(description = "是否全球发行")
        private Boolean isGlobalReleased;
        @JsonProperty("score")
        @JSONField(name = "score")
        @Schema(description = "评分")
        private Integer score;
        @JsonProperty("wish")
        @JSONField(name = "wish")
        @Schema(description = "想看人数")
        private Integer wish;
        @JsonProperty("star")
        @JSONField(name = "star")
        @Schema(description = "主演")
        private String star;
        @JsonProperty("releaseTime")
        @JSONField(name = "releaseTime")
        @Schema(description = "上映时间")
        private String releaseTime;
        @JsonProperty("category")
        @JSONField(name = "category")
        @Schema(description = "类别")
        private String category;
    }

}
